home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 November / EnigmA AMIGA RUN 02 (1995)(G.R. Edizioni)(IT)[!][issue 1995-11][Skylink CD].iso / earcd / misc / acpc_dem.lha / a-cpc.doc < prev    next >
Text File  |  1980-02-06  |  34KB  |  1,117 lines

  1. A-CPC
  2. =====
  3.  
  4. A-CPC is an Amstrad Colour Personal Computer emulator for any Amiga
  5. with Kickstart 2.0 or better.
  6.  
  7. The Amstrad CPC was designed by Amstrad plc. There were 5 models. The
  8. first 3 models appeared from 1984 and were called "CPC". The last 2
  9. models appeared in 1989 and were called the "Plus" range because they
  10. had enhanced hardware to display hardware sprites and a larger colour
  11. palette.
  12.  
  13. The CPC464 had a cassette recorder on the right of the keyboard, and
  14. 64k of memory.
  15.  
  16. The CPC664 had a disk drive on the right of the keyboard and 64k of
  17. memory.
  18.  
  19. The CPC6128 had a disk drive on the right of the keyboard and 128k of
  20. memory.
  21.  
  22. The 464+ had a cassette recorder on the right of the keyboard, enhanced
  23. hardware, different design and 64k of memory.
  24.  
  25. The 6128+ had a disk drive on the right of the keyboard, enhanced hardware,
  26. different design and 128k of memory.
  27.  
  28.  
  29. The CPC models share the same hardware:
  30.  
  31.     - Z80A CPU running at 3.3Mhz
  32.  
  33.     - General Instruments Ay-3-8912 sound generator.
  34.         - 3 channels of tone
  35.         - 1 channel noise
  36.         - simple hardware envelopes with fixed waveforms
  37.  
  38.     - Intel    8255 Parallel Peripheral Interface (general interface
  39.       chip) connected to the sound generator, keyboard, cassette
  40.       hardware, and for miscelaneous information
  41.     
  42.     - uPD765-A or INTEL 8272 Floppy Disk Controller
  43.         - support for 2 drives
  44.         - double density recording
  45.         - 3" discs with two sides (the disc must be turned
  46.           over to use the other side)
  47.         - 40 or 80 disks
  48.         - support for double sided disks
  49.  
  50.     - 6845 Cathode Ray Tube Controller 
  51.         - This chip produces the information to create the
  52.           display
  53.         - hardware scrolling, page flipping
  54.     
  55.     - Gate Array
  56.         - Chip designed by Amstrad
  57.         - translates data from CRTC into graphics and adds
  58.           colours
  59.         - 27 colour pallette (3 levels of Red, Green and Blue)
  60.         - 3 modes
  61.             - 160x200x16
  62.             - 320x200x4
  63.             - 640x200x2
  64.  
  65. There are 2 versions of this emulator package. The demo/evaluation version
  66. and a registered version.
  67.  
  68. The demo/evaluation version is freeware but the program code is (c) copyright
  69. Kevin Thacker. It may be freely copied, provided that the archive contents 
  70. remain intact and you must not charge more than a small fee to cover copying
  71. and the price of the disk. It may be uploaded to a ftp site or BBS (as long
  72. as the BBS doesnt claim copyright on uploaded material) or put  into a PD 
  73. library. If you would like to put it onto a magazine coverdisk or cover CD
  74. then contact me first. The code remains copyright to myself
  75. except for the ROM images which are copyright Amstrad plc and Locomotive
  76. Software Ltd.
  77.  
  78. The demo/evaluation version has been restricted. However, you can still
  79. try out software on the net. It supports loading of Snapshots and disk
  80. images and tape files only.
  81.  
  82. The full version is NOT freeware it is (c) copyright Kevin Thacker. It may 
  83. not be put on a magazine coverdisk, ftp site, cd collection, copied, hired, 
  84. distributed without my written permission. The full version can be obtained 
  85. by contacting me, and it costs 10 UK Pounds or equivalent in your money, 
  86. please add enough money to cover postage if you want the registered version 
  87. to be sent via mail, otherwise just pay the 10 UK pounds and I will send you
  88. the archive by e-mail.
  89.  
  90. Please send the money to my Postal address preferably in UK pounds, or
  91. as an international money order. (I may experience problems trying to
  92. convert the money into my own currency if you do not follow this advice,
  93. and as such you may not recieve the emulator).
  94.  
  95. On receipt of the money, I will either send a disk in the post, or
  96. if you prefer I could email the archive to you.
  97.  
  98. The full version has the following features:
  99.     - current version of the emulator archive
  100.     - read and write to disk images (.DSK)
  101.     - read and write snapshots
  102.     - read from CPC disks directly
  103.     - Make_DSK utility to transfer CPC disks to disk image
  104.     - CPC+ emulation
  105.     - Joystick emulation
  106.     - Multiface 2 emulation (Multiface 2 ROM not included in the archive)
  107.     - a collection of utilities to help you use your CPC software
  108.       with the emulator
  109.  
  110. Updates of the emulator will be available as they are written. If you
  111. already own the emulator, and you would like the update, then send the
  112. disk with money to cover return postage to my address.
  113.  
  114. When a update is available, I will post a message to comp.sys.amstrad.8bit.
  115.  
  116. NOTE:
  117.     You use this emulator at your own risk. I cannot be help responsible
  118.     for any damage caused from the use or mis-use of this product. As
  119.     far as I am aware, there are no fatal bugs that will crash your
  120.     system.
  121.  
  122. ----------------------------------------------------------------------------
  123.  
  124. Requirements
  125. ============
  126.  
  127. To use A-CPC you will need the following:
  128.     - asl.library in your libs/ directory 
  129.       (comes with Workbench2.0 and above)
  130.     - Kickstart 2.0/Workbench 2.0 or better
  131.  
  132. A-CPC supports the following minimum specification: 
  133. (This does not mean mean the emulation will be fast)
  134.     - 68000 CPU
  135.     - OCS chipset
  136.     - 1mb RAM
  137.     - single disk drive
  138.     
  139. To have a fast emulation, I suggest that you need the following:
  140.     - 68020 CPU or better (an accelerate machine)
  141.     - 1mb of true FastRam
  142.     - a harddrive
  143.  
  144. If you have a fast machine I would be interested to hear how fast
  145. it runs at.
  146.  
  147. NOTE:
  148.  
  149. 1.    The emulator requires the following paths to be specified:
  150.     
  151.     SNAP:        directory path for snapshots
  152.     DSK:        directory path for disk images
  153.     TAPE:        directory path for tape files
  154.     A-CPC:        directory path for A-CPC code and subdirectories.
  155.         
  156.     If you are installing A-CPC to a harddrive, and A-CPC is not
  157.     in the root, you will need to add the following lines
  158.     to your system-startup file. Alternatively, the A-CPC_Init file
  159.     can be modified to setup the paths, and you can double-click on
  160.     the icon to set them up.
  161.     
  162.     A-CPC_Init requires IconX to run.
  163.     
  164.     assign SNAP:    <path to snapshots>
  165.     assign DSK:    <path to disk images>
  166.     assign TAPE:    <path to tape files>
  167.     assign A-CPC:    <path to a-cpc files>
  168.     
  169.     e.g.
  170.     
  171.     assign A-CPC: DH0:Utils/emulators/A-CPC/
  172.  
  173. 2.    There are 4 versions of A-CPC in the registered version
  174.  
  175.     - A-CPC standard emulation for 68000 processor, (A-CPC_68000)
  176.     - A-CPC standard emulation for 68010 or greater, (A-CPC_680x0)    
  177.     - A-CPC plus emulation for 68000, (A-CPC_68000_plus)
  178.     - A-CPC plus emulation for 68010 or greater, (A-CPC_680x0_plus)
  179.  
  180.     There are 2 version of A-CPC in the demo/evaluation version
  181.     
  182.     - A-CPC standard emulation for 68000 processor, (A-CPC_68000)
  183.     - A-CPC standard emulation for 68010 or greater, (A-CPC_680x0)
  184.     
  185. ----------------------------------------------------------------------------
  186.  
  187. Running the Emulator
  188. ====================
  189.  
  190. The emulator can be run from CLI or from Workbench. It requires a config
  191. file.
  192.  
  193. 5 Configuration files have been supplied which define the CPC type that
  194. will be emulated:
  195.  
  196. cpc464.config    - CPC 464 
  197. cpc664.config    - CPC 664
  198. cpc6128.config    - CPC 6128
  199. 464plus.config    - 464+    (registered version only)
  200. 6128plus.config - 6128+ (registered version only)
  201.  
  202. At the CLI type:
  203.  
  204. A-CPC_68000 <config_filename>
  205.  
  206. e.g.
  207.  
  208. A-CPC_68000 cpc464.config
  209.  
  210. Or from Workbench you can double click on the config icons themselves
  211. and the emulator will automatically be loaded. The config files have
  212. been set to load the 680x0 version of the emulator. If you wish to change
  213. this select the icon, choose "Information" from the menu and change the
  214. Tool to "A-CPC_68000".
  215.  
  216. Or, you can double click on the A-CPC icon and enter a config file after
  217. the A-CPC filename.
  218.  
  219. ----------------------------------------------------------------------------
  220.  
  221. Running Games
  222. =============
  223.  
  224. Snapshots:
  225.  
  226. Snapshots are simply a dump of the memory with the information about
  227. the state of the hardware which are used to restart a program at the
  228. point the snapshot was saved.
  229.  
  230. The file format is the same as used by CPCEMU and CPE and they
  231. have the ".SNA" extension. 
  232.  
  233. Almost all snapshots should work, except for Alien Highway.
  234.  
  235. Disk images:
  236.  
  237. Disk images are a file containing a copy of the data on a disk. They
  238. can be created using CPCTRANS.EXE with CPCEMU on the PC, or with Make_DSK
  239. which is provided in the registered version of this emulator.
  240.  
  241. The file format is the same as used by CPCEMU and CPE. As in CPCEMU you
  242. can write to disk images (registered version only!). Disk images have
  243. the ".DSK" extension.
  244.  
  245. To use a disk image you need to "Insert the disk into drive X". Select
  246. the option from the Files menu and choose the disk image file.
  247.  
  248. Tape files:
  249.  
  250. These are files on an Amiga disk. Binary and Basic files must have
  251. an Amsdos header to be recognised. To use Tape files you must select
  252. tape operation (|TAPE), then you can run the files.
  253.  
  254.  
  255. Loading from Disk Images or Tape files:
  256.  
  257. With Disk or Tape files you will need to use Amsdos commands and Basic
  258. commands. 
  259.  
  260. If you have not used an Amstrad before the following commands should
  261. help you to run software.
  262.  
  263. (The "|" symbol is obtained by pressing SHIFT and @ key on the CPC keyboard)
  264.  
  265. |TAPE
  266.     Choose to load from tape
  267.  
  268. |DISC
  269.     Choose to load from disc    
  270.  
  271. |CPM    
  272.     Boot CPM from a CPM disk or this will run some games that
  273.     do not have files in the directory.
  274.  
  275.  
  276. CAT or |DIR
  277.  
  278.     This will display a list of files on the disc or tape.
  279.  
  280. RUN"<filename>.<ext>
  281.  
  282.     This will RUN a file on the disc or tape. If the file
  283.     doesnt have a ".  ", ".BAS" or ".BIN" extension then you
  284.     will have to specify it.
  285.     
  286.     e.g.    RUN"NEBULUS
  287.     
  288. LOAD"<filename>.<ext>
  289.  
  290.     Load a file into memory. It will not run it. Basic files
  291.     can be shown by typing "LIST".
  292.     
  293. |ERA,"<filename>.<ext>
  294.  
  295.     Delete a file on the disc
  296.     
  297. |REN,"<newfilename>.<newext>","<oldfilename>.<oldext>"
  298.  
  299.     Rename a file on the disc.
  300.  
  301. |A
  302.  
  303.     Choose drive A
  304.     
  305. |B
  306.     Choose drive B
  307.     
  308. ----------------------------------------------------------------------------
  309.  
  310. Keyboard
  311. ========
  312.  
  313. The following Amiga keys are used as a short cut:
  314.  
  315. F1    - Load Snapshot
  316. F2    - Save Snapshot
  317.  
  318. F8    - Multiface Stop Button (registered version only)
  319. F9    - Reset CPC
  320. F10    - Quit emulator
  321.  
  322. The Amiga keyboard has a different layout than the CPC, and the keys
  323. are not marked the same, so you may find a problem trying to find
  324. the CPC key. Here is a list of CPC keys and their Amiga equivalents:
  325.  
  326. CPC    Amiga
  327.  
  328. !1    !1
  329. "2    "2
  330. #3    #3
  331. $4    $4
  332. %5    %5
  333. &6    ^6
  334. '7    &7
  335. (8    *8
  336. )9    (9
  337. _0    )0
  338. -=    _-
  339. ^ pound    +=
  340. CLR    |\ or DEL
  341.  
  342.  
  343. f0    keypad 0
  344. f1    keypad 1
  345. f2    keypad 2
  346. f3    keypad 3
  347. f4    keypad 4
  348. f5    keypad 5
  349. f6    keypad 6
  350. f7    keypad 7
  351. f8    keypad 8
  352. f9    keypad 9
  353. f.    keypad .
  354. small    keypad enter
  355. enter
  356. Q-P    Q-P
  357. A-L    A-L
  358. Z-M    Z-M
  359. @|    {[
  360. [{    ]{
  361. :*    :;
  362. +;    "'
  363. ]}    <RET> (key cut out of RETURN on International keyboards)
  364. \'    <SHIFT> (key cut out of SHIFT on International keyboards)
  365. <,    <,
  366. >.    >.
  367. ?/    ?/
  368. SPACE    SPACE
  369. DELETE    BACKSPACE
  370. TAB    TAB
  371. RETURN    RETURN
  372. ESC    ESC
  373. CLR    DEL
  374. SHIFT    LEFT OR RIGHT SHIFT
  375. CTRL    CONTROL
  376. COPY    LEFT ALT
  377.  
  378. ----------------------------------------------------------------------------
  379.  
  380. Configuration file
  381. ==================
  382.  
  383. The emulator needs a configuration file to run. The configuration filename
  384. and path is specified in the commandline:
  385.  
  386. e.g.
  387.  
  388. a-cpc_680x0 <device:path/filename of config file>
  389.  
  390. The configuration is used to define the CPC model and characteristics
  391. that A-CPC will emulate.
  392.  
  393. The minimum configuration file MUST contain the following:
  394.  - the location of a Operating System ROM (OS_ROM=)
  395.  - the location of a BASIC ROM (ROM=0 PATH=)
  396.  - size of the CPC RAM (RAM_K=)
  397.  
  398. The lines of the configuration may be in any order, and a line of
  399. configuration can be added by loading the configuration file into
  400. a text editor. 
  401.  
  402. The configuration will initialise the emulator to your prefered setup
  403. when it starts. Some of these options can be changed from within the
  404. emulator.
  405.  
  406. The following config command-lines are supported:
  407.  
  408. OS_ROM = <device:path/filename> [NOPATCH]
  409.  
  410.         This line defines the location of the file containing
  411.         the operating system data. The file must NOT have a
  412.         AMSDOS header.
  413.         
  414.         The keyword NOPATCH is optional. When a rom has been
  415.         found, the emulator will attempt to find a file
  416.         of the same name but with a ".patch" extension. 
  417.         
  418.         The patch file can be used to remove code to speed
  419.         up the emulation in places.
  420.         
  421.         If the keyword NOPATCH is present, the patch file
  422.         will not be loaded.
  423.     
  424.         This line must be present for the emulator to work.
  425.     
  426.         e.g.
  427.         
  428.         OS_ROM=A-CPC:roms/cpc6128-os.rom
  429.         
  430. ROM = <rom number> PATH=<device:path/filename> [NOPATCH]
  431.  
  432.         This line defines the rom number and the location
  433.         of the file containing the data. The file must NOT
  434.         have a AMSDOS header.
  435.         
  436.         This function allows the user to add extra roms in
  437.         addition to BASIC and AMSDOS in a rom position of
  438.         their choice. (rom position is in the range 0..15
  439.         for 6128 emulation, and 0..7 for 464 emulation so
  440.         that the operating system will notice it's existance)
  441.         
  442.         ROM 0 must be present for the emulator to work.
  443.  
  444.         The demo/evaluation version will only support BASIC
  445.         and AMSDOS ROMs.
  446.         
  447.         e.g.
  448.         
  449.         ROM = 1 PATH=A-CPC:roms/protext.rom NOPATCH
  450.         
  451. DRIVE_A = <device:path/filename>
  452.  
  453.         This line defines a disk image (DSK) that will be
  454.         automatically "inserted" into CPC drive A,
  455.         when the emulator is started.
  456.  
  457.         This function is not available on the demo/evaluation
  458.         version of the emulator.
  459.         
  460.         e.g.
  461.         
  462.         DRIVE_A=DSK:stormlord.dsk        
  463.  
  464. DRIVE_B = <device:path/filename>
  465.  
  466.         Same function as DRIVE_A, except the disk image will
  467.         be "inserted" into CPC drive B.
  468.         
  469. RAM_K = <size of CPC memory in decimal>
  470.  
  471.         This function defines the size of CPC memory. This value
  472.         must be divisible by 64. It's value must be in the range
  473.         64-576.
  474.         
  475.         This line must be present for the emulator to work.
  476.         
  477. PPI_PORT_B = <decimal value>
  478.     
  479.         PORT B of the 8255 PPI has the following bits:
  480.         
  481.         7     Tape read data
  482.         6    Centronics Busy
  483.         5    Expansion port device present
  484.         4    Screen refresh (50Hz/60Hz)
  485.         3..1    Machine name (Amstrad, Schneider etc)
  486.         0    Frame Flyback pulse
  487.         
  488.         You can specify this byte and change the name of the
  489.         computer. The CPC was created by Amstrad, but sold
  490.         by different companies in Europe. With this byte you
  491.         can have their name instead.
  492.         
  493. INT_SPEED = <decimal value>
  494.  
  495.         This function defines the number of opcodes that is
  496.         counted before a z80 interrupt is triggered.
  497.         
  498.         If this value is reduced, then interrupts will be faster,
  499.         if it is increased, then interrupts are slower.
  500.         
  501.         On faster Amigas, this value will need to be high (about
  502.         1500). 
  503.         
  504.         You may find that some games will not work. The reason
  505.         may be that the interrupts are too fast for the game.
  506.         Try changing this value, and you will find the game
  507.         will work.
  508.     
  509.         The default value is 800.
  510.         
  511. MULTIFACE_ROM = <device:path/filename>
  512.  
  513.         To use the Multiface II emulation you need a file containing
  514.         the ROM data. This line specifies the location of the file,
  515.         and if the file is found, the emulation is enabled. The ROM
  516.         must NOT have a AMSDOS header.
  517.         
  518.         See the section on the Multiface emulation for more information.
  519.  
  520.         This function is not present on the demo/evaluation version
  521.         of the emulator.
  522.         
  523.         e.g.
  524.         
  525.         MULTIFACE_ROM = A-CPC:roms/multiface.rom
  526.         
  527. SOUND = <decimal value>
  528.  
  529.         This function will enable (0) or disable (<>0) the sound 
  530.         before the emulator has been started. On slow Amigas music
  531.         and sound effects are not easy to recognise, so this
  532.         option is provided to turn off sound. Many times I have
  533.         found it annoying to listen to the sound.
  534.                 
  535.         You can turn the sound off or on from a menu
  536.         in the emulator.
  537.         
  538.         e.g.
  539.         
  540.         SOUND = 0
  541.         
  542. ----------------------------------------------------------------------------
  543.  
  544. ROM Patch file
  545. ==============
  546.  
  547. When the ROM data is loaded during configuration, A-CPC will attempt
  548. to load a patch file (this will not happen if the NOPATCH keyword 
  549. is present). The patch file is used to modify the ROM data to improve
  550. compatibility with A-CPC or to speed up it's operation in A-CPC.
  551.  
  552. It has been provided so that the main code of the emulator does not
  553. need to be changed specifically.
  554.  
  555. The patch file contains any number of entries. The entries have the
  556. form:
  557.  
  558. 1 word        offset in ROM data in bytes
  559. 1 word        low byte contains byte to poke at offset, high byte
  560.         is ignored.
  561.         
  562. NOTE:
  563.  
  564. If you wish to use ROMDOS with A-CPC, then you can use the same patch
  565. file as used with CPC AMSDOS.
  566.  
  567. ----------------------------------------------------------------------------
  568.  
  569. Multiface 2 Emulation (registered version only)
  570. =====================
  571.  
  572. A-CPC has built in support for Multiface 2 emulation. To use this feature
  573. you will need a copy of the Multiface 2 rom data. (A program has been provided
  574. for you to run on your CPC which will do this).
  575.  
  576. The Multiface 2 ROM is (c) copyright Romantic Robot Ltd, UK, and so I cannot
  577. include it.
  578.  
  579. The emulation will work just like the real thing. Programs can be frozen
  580. at any time and you can enter pokes or look at the memory. You can even
  581. save the memory out to a disk image (similar to a snapshot), and re-load
  582. it later to start from the same position.
  583.  
  584. If you have a utility for the Multiface such as Tearaway or Insider, this
  585. will work too. You will need a disk image of the utility.
  586.  
  587. In the emulator, you activate the multiface by pressing F8 or by selecting
  588. "Multiface Stop" from the menu, you should then see the familiar Multiface
  589. menu.
  590.  
  591. You will need to do the following to use this feature:
  592.  
  593. 1) Transfer the two files MULTSAVE.BAS and MULTSAVE.BIN to a CPC disk,
  594. 2) With the CPC turned off, connect the Multiface 2 to the expansion port,
  595. 3) Switch on the CPC, and insert the disc with the files on it and 
  596.    type:
  597.    
  598.    RUN"MULTSAVE
  599.  
  600. 4) The program will save the Multiface rom data to a file called
  601.    MULTFACE.BIN
  602.    
  603. 5) Transfer MULTFACE.BIN from the CPC disk to an Amiga disk, and 
  604.    copy it into the roms/ directory of A-CPC.
  605.  
  606. 6) Load a text editor and add the following line to any of the
  607.    config files:
  608.    
  609.    MULTFACE_ROM=A-CPC:roms/multface.rom
  610.    
  611. 7) Now run A-CPC..
  612.  
  613. NOTE:
  614.  
  615. I have successfully run this feature using the rom data from my own
  616. Multiface. This feature may or may not work with older versions of the
  617. Multiface. 
  618.  
  619. The Multiface for the CPC will not work with the Plus emulation
  620. because of differences in the disk roms. The multiface assumes the location
  621. of routines in the disk rom, and will crash if run with the wrong CPC.
  622. (If you own a Plus machine with a Plus compatible Multiface, I would
  623. be very interested to hear from you so that I can add support for Plus
  624. Multiface).
  625.  
  626. The CPC version of the Multiface will only work with the 464/664 and 6128.
  627. The Plus version of the Multiface will only work with the 464+ and 6128+.
  628.  
  629. Some protections will prevent programs from working if the Multiface is
  630. enabled. To reduce the chance of this happening, the Multiface is made
  631. invisible when the emulator is reset.
  632.  
  633. I have found that the Multiface emulation does not work with some games.
  634. I do not know what is causing this, this may occur on the original
  635. Multiface.
  636.  
  637. ---------------------------------------------------------------------------
  638.  
  639. A-CPC Utilities
  640. ===============
  641.  
  642. Format_DSK (registered version only)
  643. ==========
  644.  
  645. This utility will create a blank disk image in the format you specify
  646. so that you can save your own programs on it.
  647.  
  648. COMMAND FORMAT:
  649.  
  650. Make_DSK WRITE Dsk_filename FORMAT disk_format
  651.  
  652. dsk_filename
  653.     = Filename and path of DSK image to write
  654.     
  655. disk_format
  656.     = Name of the format
  657.  
  658. e.g.
  659.  
  660. Make_DSK write df1:programs.dsk format data
  661.  
  662. NOTE:
  663.  
  664. The following formats are supported:
  665.  
  666. DATA
  667. SYSTEM
  668. D1 (ROMDOS/RAMDOS)
  669. D10 (ROMDOS/RAMDOS)
  670.  
  671. ----------------------------------------------------------------------------
  672.  
  673. Make_DSK (registered version only)
  674. ========
  675.  
  676. Make_DSK will read any CPC format disk, even copy-protected discs, 
  677. and attempt to make a disk image. (The disk image is compatible with 
  678. CPCEMU). It has been designed so that you can use all your software with 
  679. A-CPC. 
  680.  
  681. If you have copy-protected software which you would like to use on
  682. A-CPC, then you must connect a 3" disc to your Amiga, or copy the disks to 
  683. 3.5". (Please contact me if you have been successful with connecting
  684. a 3" drive).
  685.  
  686. But, make sure that the copy you make does run on your CPC, otherwise
  687. it will not run on A-CPC either. However, this does not mean that the 
  688. software will work. The emulator doesnt emulate the CPC perfectly 
  689. there are still some hard to find bugs which may prevent the disk from 
  690. loading correctly. This probably applies to disks with heavy copy-protection.
  691.  
  692. Some protected software relies on error codes returned from the fdc.
  693. A-CPC supports some of these errors, but at this date, neither CPCEMU
  694. or CPE do, but I have been talking with the authors about it. So, if
  695. you create disk images from Make_DSK they may not work with CPCEMU or
  696. CPE.
  697.  
  698. Please Note: I do not authorise or condone the use of this program for
  699. backuping copy-protected software. You will need to obtain permission from
  700. the copyright holder before converting any disk.
  701.  
  702. COMMAND FORMAT:
  703.  
  704. Make_DSK 
  705.     Unit_Number Destination_FileName No_of_tracks No_of_sides Start_Side
  706.  
  707. Unit_Number 
  708.     = Amiga drive containing the CPC disk
  709.         e.g. 0, 1, 2 or 3
  710.             
  711. Destination_Filename 
  712.     = Filename and path of DSK image to write
  713.         e.g. ram:dsk_images/north_and_south-1.dsk
  714.  
  715. No_of_Tracks 
  716.     = Number of tracks to read from CPC disk
  717.         e.g. 40, 42 or 80
  718.     
  719.       NOTE: Some demos and games use track 40 and 41 to store more
  720.             data on a 40 track disk. If you are not sure of the
  721.             number of tracks used, enter 42.
  722.  
  723. No_of_Sides 
  724.     = Number of sides to read from CPC disk
  725.         e.g. 1 or 2
  726.         
  727. Start_Side 
  728.     = Side to start reading from. (e.g. if you have a side switch
  729.       on your CPC to use both sides of a 3.5" disc using AMSDOS,
  730.       you can choose the side to read with this parameter)
  731.         e.g. 0 or 1
  732.  
  733.  
  734. e.g.
  735.  
  736. Make_Dsk 0 df1:dsk_images/north_and_south-1.dsk 40 1 0
  737.  
  738.  
  739. NOTE:
  740.  
  741. For AMSDOS disks:
  742.  
  743. - 40 tracks (possibly 41 or 42 for copy-protected disks)
  744. - 1 side
  745.  
  746. For ROMDOS disks:
  747.  
  748. - 80 tracks
  749. - 2 sides
  750.  
  751. If you want to convert a CPC disk which needs a special program (on CPC
  752. disk or CPC ROM) to read the format, such as ROMDOS or any other DOS, then
  753. you will need a copy of this program to read the disk image and run
  754. it on A-CPC.
  755.  
  756. For ROMDOS use SAVEROMS to save a copy of the rom data, and add a 
  757. line to the config file.
  758.  
  759. I have successfully converted the following to disk image from my
  760. originals (these had some copy-protection):
  761.  
  762. North & South            Road Runner (US Gold version)
  763. Nightbreed            Target Renegade
  764. Run the Gauntlet
  765. Short Curcuit
  766. Barbarian
  767. Mr.Heli
  768.  
  769. ----------------------------------------------------------------------------
  770.  
  771. SAVEROMS.BAS (registered version only)
  772. ============
  773.  
  774. This is a program to run on your CPC. It will display a list of ROMs that
  775. are connected (e.g. PROTEXT,UTOPIA, ROMDOS etc). You can choose the name
  776. of the ROM and enter a filename, and it will save the rom data. 
  777.  
  778. To use this program, transfer it to an Amstrad disk and run it from AMSDOS.
  779.  
  780. You can use the ROM data  with A-CPC by modifying A-CPC config file.
  781.  
  782. When you transfer the files to the CPC, make sure there is not a AMSDOS
  783. header, otherwise the rom will not work.
  784.  
  785. ----------------------------------------------------------------------------
  786.  
  787. SAVEMULT.BAS (registered version only)
  788. ============
  789.  
  790. This is a program to run on your CPC. It is used to save a copy of the
  791. Multiface 2 rom data. 
  792.  
  793. To use this program:
  794.  
  795. 1) Copy the files onto a CPC disk,
  796. 2) Attach your Multiface to your CPC,
  797. 3) Switch on the CPC and run the program from AMSDOS
  798.  
  799. If everything works well, a file will be saved to the disc called
  800. MULTFACE.ROM.
  801.  
  802. See the section on the Multiface emulation for more information.
  803.  
  804. ----------------------------------------------------------------------------
  805.  
  806. SAVEBURN.BAS (registered version only)
  807. ============
  808.  
  809. This is a program to run on your CPC+. It is used to save the game
  810. Burning Rubber from the cartridge supplied with the Plus. Since the
  811. game is copyrighted, I cannot include a copy with this emulator, so
  812. I have provided this utility to save it, so you can play Burning Rubber
  813. on A-CPC.
  814.  
  815. To use the program:
  816.  
  817. 1) Copy the files to a CPC disk,
  818. 2) With the Burning Rubber/BASIC cartridge inserted run this program
  819. from BASIC,
  820.  
  821. 4 files will be written and they will be called:
  822.  
  823. BURNROM.1, BURNROM.2,BURNROM.3 and BURNROM.4.
  824.  
  825. 3) Copy these files to an Amiga disk and run the Make_Burning_Rubber
  826.    program. (This will create a Burning Rubber cartridge image suitable
  827.    to be used with the emulator).
  828.    
  829. 4) To play burning rubber select "Insert Cartridge" from the files menu
  830.    on the Plus version of A-CPC.
  831.  
  832. ----------------------------------------------------------------------------
  833.  
  834. Using CPC disks (registered version)
  835. ===============
  836.  
  837. If you want to use 3" or 3.5" disks that have CPC software on them without
  838. converting them into disk images then use this feature. Please note, that
  839. the speed of loading depends on the complexity of any copyprotection (if
  840. present) and the speed of your machine. On my vanilla A500 reading CPC
  841. disks under AMSDOS is slighly faster than reading disk images, purely
  842. due to the fact that I am only using 2 drives and the AmigaOS has to
  843. search through the disk image file and back again in these circumstances.
  844.  
  845. It will allow you to use all your CPC software, so you can then decided
  846. which games you want to convert to disk later to and store them on your
  847. harddrive.
  848.  
  849. As with the disk images, if a special program or rom is required to read
  850. a format on the CPC, this must be used in the emulator to read the format.
  851.  
  852. This feature will load some copyprotected software. Since much copyprotected
  853. software relies on undocumented commands or features and/or specific error
  854. codes from the Floppy Disk Controller, they may fail to load.
  855.  
  856. I been successful with the following disk formats:
  857.  
  858. - all standard AMSDOS (DATA,SYSTEM etc)
  859. - all standard ROMDOS (D1,D10 etc - using a ROM image)
  860. - some copyprotected disks including
  861.     Get Dexter
  862.     Jack Nicklaus' Golf
  863.     Target Renegade didnt run, probably because the copyprotection
  864.     was very complicated.
  865.     
  866. ----------------------------------------------------------------------------
  867.  
  868. Other emulators
  869. ===============
  870.  
  871. During the development of this emulator I have discovered that other
  872. CPC emulators exist:
  873.  
  874. PC:
  875.  
  876. CPCEMU v1.3b    by    Marco Vieth (ali@uni-paderborn.de)
  877.             (It can be found on Simtel mirrors)
  878.             
  879.             micros.hensa.ac.uk/pub/
  880.  
  881. CPE v5.0    by     Bernd Schmidt (crux@Pool.Informatik.Rwth-aachen.de)
  882.             ftp.nvg.unit.no/pub/cpc/incoming/cpe50.zip
  883.             ftp.nvg.unit.no/pub/cpc/incoming/cpe50src.zip
  884.  
  885. I have been told there are 2 others, but I dont know their status.
  886.  
  887. Amiga:
  888.  
  889. CPE        by    Bernd Schmidt (a very early version, Bernd doesnt
  890.             plan to update this emulator. It comes with source)
  891.             ftp.nvg.unit.no/pub/cpc/incoming/acpe_new.lzh
  892.  
  893. Unix:
  894.  
  895. (Unknown)    by    Mark Conwy (mpc@scs.leeds.ac.uk)
  896.             The emulator supports snapshots and disk images
  897.             to a useable degree. This has not been released
  898.             yet.
  899. Mac:
  900.  
  901. (unknown)    by    (unknown)
  902.             Aparently a CPC emulator for Mac is being developed.
  903.             I dont know any more than this. It is being
  904.             written by a guy on compuserve.
  905.             
  906. Archimedes:
  907.  
  908. !CPC        by    rison@hep.cam.ac.uk
  909.  
  910. (unknown)    by    "Face Hugger"
  911.             Aparently, a famous CPC demo coder has written
  912.             a CPC emulator for the Archimedes. This may
  913.             just be a rumour. I have not seen the emulator
  914.             so I dont know about it's status.
  915.  
  916. If you are writing an emulator please contact me.
  917.                                     
  918. --------------------------------------------------------------------------
  919.  
  920. Sources of CPC software and information
  921. =======================================
  922.  
  923. Firmware Guide by Bob Taylor and Thomas Defoe.
  924.     ftp.ibp.fr/pub/amstrad/misc/firmware.zip
  925.  
  926.     Now in electronic form.
  927.  
  928. WWW:
  929.     Unofficial Amstrad CPC WWW Resource
  930.     http://www.cs.cf.ac.uk/User/K.E.W.Thacker/Amstrad/index.html
  931.  
  932.     and soon a mirror at http://www.nvg.unit.no
  933.  
  934.     It contains Amstrad related links and especially the CPC Guide
  935.     which contains documentation on the CPC chips and more documents
  936.     essential for emulator authors.
  937.     
  938. Newsgroups:
  939.  
  940. There is an Amstrad 8-bit specific newsgroup for talking about emulators
  941. and all things Amstrad related.
  942.  
  943. comp.sys.amstrad.8bit
  944.  
  945. FAQ (Frequently Asked Questions):
  946.  
  947. There is a official FAQ for the Amstrad newsgroup. It is posted twice
  948. a week, and it can also be found at:
  949.  
  950. ftp.ibp.fr/pub/amstrad/amstrad.faq
  951.  
  952. It is maintained by Emmanuel Roussin
  953.  
  954. Anonymous FTP:
  955.  
  956. At the prompt enter "anonymous" or "ftp", and your e-mail address for
  957. the password.
  958.  
  959. ftp.ibp.fr    /pub/amstrad
  960.  
  961.         The files are mirrored from "Genesis the 8bit generation BBS"
  962.         run by Emmanuel Roussin. (roussin@blaise.ibp.fr).
  963.         
  964.         This site contains a huge selection of public domain and shareware
  965.         software for the CPC and much much more.
  966.  
  967.         This site is very busy during the day.
  968.  
  969.         There is no incoming directory. You must contact
  970.         Emmanuel to sort out how to get the files to him.
  971.         
  972. ftp.nvg.unit.no    /pub/cpc/
  973.         
  974.         This site has lots and lots of games in snapshot
  975.         and disk image format. It also has much more.
  976.         Check out /pub/cpc/incoming for the latest uploads.
  977.  
  978.         This site can be busy during the day.
  979.         
  980.         You can put uploads into the /pub/cpc/incoming directory.
  981.         
  982. sunshine.informatik.uni-wuerzburg.de /pub/joscho/cpcemu
  983.  
  984.         mirror of the ftp.nvg.unit.no site. Limited ftp access.
  985.         
  986. ftp.demon.co.uk    /pub/cpm
  987.  
  988.         Software for CPC C/PM. Limited set of files.
  989.         
  990. BBS:
  991.     Aspects (2:250/107) +44 1617920260 (UK)
  992.     
  993.     Genesis the 8bit Generation (2:320/220) +33 1 39 50 54 11 (France)
  994.     
  995.     Razormaid (2:2471/6009) +49 711 4204329 (Germany)
  996.     
  997.     ZNODE 51 +49 89 961 45 75 (Germany)
  998.  
  999. ==========================================================================
  1000.  
  1001. Please contact me if:
  1002. - you find a bug.
  1003.  
  1004.     Please supply this information:
  1005.     Amiga model, CPU, hardware connected, how the bug was generated.
  1006.     
  1007. - you find a game that does not work
  1008.  
  1009.     Some games will not work because they rely on undocumented
  1010.     features of the chips. But I might be able to improve the emulator
  1011.     if I can find bugs and fix them.
  1012.  
  1013. - you know about the "KC Kompact" computer made by a German firm
  1014. - e-mail addressess of CPC demo coders
  1015. - e-mail addressess of game companies who made games for the CPC
  1016. - information about other emulators
  1017. - connecting a 3" drive to the Amiga
  1018. - if the program supplied to save Plus cartridges works and if you
  1019.   have successfully had a cartridge image running on the plus emulation
  1020.   (this does not include the Burning Rubber cartridge)
  1021.   
  1022. All your comments are welcome. Especially ideas about increasing the
  1023. performance of the emulator.
  1024.  
  1025. ----------------------------------------------------------------------------
  1026.  
  1027. About the Author and the Program
  1028. ================================
  1029.  
  1030. I am a 20 year old male studying Computer Science at Cardiff University
  1031. in Wales in the United Kingdom. I am now in my 3rd year.
  1032.  
  1033. The whole of the emulator package was written on a vanilla A500 with
  1034. 2 disk drives and 1mb of Chip Ram, running Workbench 2.0.
  1035.  
  1036. It has taken me about a year and a half to write so far and it is my first 
  1037. ever program using the Amiga Operating System, and it is actually my
  1038. 2nd program I have written on the Amiga. (The first being an unfinished
  1039. Zool clone).
  1040.  
  1041. I am beginning to loose count of the number of times that a disk has
  1042. decided to become corrupted or the number of times the computer has
  1043. crashed, and I have had to reboot. Believe me that trying to develop
  1044. a program of this size on a A500 is a headache. The whole program
  1045. actually uses 3 disks. 1 disk for Devpac, 1 disk for Includes, 1 disk
  1046. for the source code and rom data. About another 30 disks hold snapshots
  1047. and disk images which I use to check the emulator is working correctly.
  1048. Thankfully, I am not used to a harddrive and the luxurys like large
  1049. amounts of memory after writing many programs on a CPC. (I wrote a Windows
  1050. system on the CPC and it took over half an hour to assemble!)
  1051.  
  1052. The source code takes about 15 mins to assemble. Not bad for about 700k
  1053. of source code.
  1054.  
  1055. The emulator should be 680x0 compatible. I have read through documentation
  1056. of other emulators and worked out what is needed for bare compatibility,
  1057. and when I can afford a new Amiga I will probably add 68020 enhancements
  1058. and more. Until then I will stick with the A500 and add as much as I can.
  1059. At least with the A500, when I change the code to speed things up, it is
  1060. noticeable.
  1061.  
  1062. I have only owned a A500 for two years now, previously I owned
  1063. a CPC6128. On the CPC I hacked lots of protections so I could transfer
  1064. tapes to disc, wrote a disk copier, a windows system, a windows-style
  1065. help system, picture converters, converted 100's of tunes from the Atari
  1066. ST, wrote some demos (many not complete), wrote a program to read PC
  1067. and Archimedes disks and with all this information I wrote the CPC Guide
  1068. which is available on the Unofficial Amstrad CPC WWW Resource. I can
  1069. still remember one Speedlock protection which had over 70 continuous
  1070. de-protection loops (all involving the dreaded R register!).
  1071.  
  1072. ----------------------------------------------------------------------------
  1073.  
  1074. Credits and Contributions
  1075. =========================
  1076.  
  1077. Many thanks to everyone who has contributed to the emulator and the WWW pages.
  1078. They are (in no specific order), sorry if I have missed you out:
  1079. Bernd Schmidt, Marco Vieth, Jim Boulton, Emmanuel Roussin, Herman Dullink,
  1080. Christian Emre Lysel and all the others.
  1081.  
  1082. ----------------------------------------------------------------------------
  1083.  
  1084. Contact:
  1085.  
  1086.  
  1087. Postal Address:
  1088.  
  1089.     Kevin Thacker,
  1090.     Fairhaven,
  1091.     Whiteway,
  1092.     Stroud,
  1093.     Gloucestershire,
  1094.     GL6 7EP
  1095.     England
  1096.     
  1097. E-Mail:
  1098.  
  1099.     K.E.W.Thacker@cs.cf.ac.uk (until June 96)
  1100.     
  1101. ----------------------------------------------------------------------------
  1102.  
  1103. Acknowledgements
  1104. ================
  1105.  
  1106. The ROMs included in this package (cpc464-os.rom, cpc464-basic.rom,
  1107. cpc664-os.rom, cpc664-basic.rom, cpc6128-os.rom, cpc6128-basic.rom,
  1108. cpc-amsdos.rom, plus-os.rom, plus-basic.rom and plus-amsdos.rom) are
  1109. (c) copyright Amstrad Plc and Locomotive Software. Permission has
  1110. been obtained to distribute them with the demo version and release
  1111. version of this emulator. Many thanks to Cliff Lawson and Richard Clayton.
  1112.  
  1113. The Multiface 2 is (c) copyright Romantic Robot Ltd.
  1114.  
  1115. Burning Rubber cartridge is copyright (c) Ocean Software, and Amstrad plc.    
  1116.  
  1117. ----------------------------------------------------------------------------